package com.heima.wemedia.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.heima.model.common.dtos.CommentDto;
import com.heima.model.common.dtos.CommentPageDto;
import com.heima.model.common.dtos.CommentPageDto2;
import com.heima.model.common.dtos.ResponseResult;
import com.heima.model.common.pojos.wemedia.WmNews;
import com.heima.model.common.vo.WmNewsCommentVo;
import com.heima.wemedia.pojos.CommentLikeDto;
import com.heima.wemedia.pojos.CommentListVo;
import org.apache.ibatis.annotations.Mapper;

@Mapper
public interface WmCommentService extends IService<WmNews> {

    /**
     * 查看评论
     * @param dto
     * @return
     */
    Page<WmNewsCommentVo> findNewsComments(CommentPageDto dto);

    /**
     * 删除评论
     * @param commentId
     * @return
     */
    ResponseResult deleteNewsComments(Integer commentId);

    /**
     * 删除评论回复
     * @param commentRepayId
     */
    void delCommentRepay(String commentRepayId);

    /**
     * 查看评论列表
     * @param dto
     * @return
     */
    Page<CommentListVo> listComment(CommentPageDto2 dto);




    /**
     * 回复评论
     * @param commentDto
     * @return
     */
    ResponseResult repayComment(CommentDto commentDto);

    /**
     * 打开或关闭评论
     * @param commentDto
     * @return
     */
    ResponseResult updateCommentStatus(CommentDto commentDto);

    /**
     *
     * 评论点赞
     * @param commentId
     * @param operation
     * @return
     */
    ResponseResult commentlike(String commentId, Integer operation);
}
